#if !defined( PARTIAL_MATCHES_IN_LIST_H)
#define  PARTIAL_MATCHES_IN_LIST_H
#include <string>
#include <vector>

struct t_string_partial_matches
{
	enum eMATCH_MODE {eMATCH_ANY, eMATCH_FRONT = 1, eMATCH_BACK = 2, eMATCH_FULL = 3};
	std::vector<std::string>	strings;
	std::vector<eMATCH_MODE>	match_modes;
	std::vector<unsigned>		results;

	void add_string(const std::string& string, unsigned result, eMATCH_MODE mode = eMATCH_FRONT)
	{
		strings.push_back(string);
		results.push_back(result);
		match_modes.push_back(mode);
	}

	void find_matches(const std::string& str, std::vector<unsigned>& matching_results);
};
#endif	//PARTIAL_MATCHES_IN_LIST_H

